package com.letu.core.businmodel;

import java.io.Serializable;
import java.util.Arrays;
import java.util.List;

public class TenantIgnoreTable implements Serializable {

    //不需要多租户的表
    public static List<String> baseTable = Arrays.asList(
            "c_menu",
            "c_area",
            "c_config_attribute",
            "c_dictionary",
            "c_dictionary_type",
            "c_project_db",
            "c_exhibition",
            "c_function",
            "c_hot_image",
            "c_hot_image_point",
            "worker_node",
            "information_schema",
            "information_schema.COLUMNS",
            "COLUMNS",
            "c_data_isolation",
            "c_tenant_rule"

    );


    //多租户: 系统数据隔离 + 团队隔离的表
    public static List<String> baseSystemOrTeamTable = Arrays.asList(
    );

    //多租户: 系统数据隔离
    public static List<String> baseSystemTable = Arrays.asList(
            "e_msg"
//            "e_sms_template",
//            "e_inner_template"
    );

    //多租户: 团队隔离的表
    public static List<String> baseTeamTable = Arrays.asList(
    );


    //多租户: 项目隔离的表
    public static List<String> baseProjectTable = Arrays.asList(
            "c_user_account",
            "c_form_field",
            "c_form_field_group",
            "c_form_field_subsystem",
            "c_menu_role",
            "c_back_list",
            "cert_blacklist",
            "cert_car_record",
            "c_back_list",
            "cert_certificate",
            "cert_certificate_index",
            "cert_certificate_auth",
            "e_sms_template",
            "e_inner_template"
    );

    //主键id不是雪花id的表
    public static List<String> baseNoSnowflakeTable = Arrays.asList(
            "worker_node"
    );

    public static void setBaseTable(List<String> baseTable) {
        TenantIgnoreTable.baseTable = baseTable;
    }

    public static void setBaseSystemOrTeamTable(List<String> baseSystemOrTeamTable) {
        TenantIgnoreTable.baseSystemOrTeamTable = baseSystemOrTeamTable;
    }

    public static void setBaseSystemTable(List<String> baseSystemTable) {
        TenantIgnoreTable.baseSystemTable = baseSystemTable;
    }

    public static void setBaseTeamTable(List<String> baseTeamTable) {
        TenantIgnoreTable.baseTeamTable = baseTeamTable;
    }

    public static void setBaseProjectTable(List<String> baseProjectTable) {
        TenantIgnoreTable.baseProjectTable = baseProjectTable;
    }

    public static void setBaseNoSnowflakeTable(List<String> baseNoSnowflakeTable) {
        TenantIgnoreTable.baseNoSnowflakeTable = baseNoSnowflakeTable;
    }
}
